"""
    在事件外调用（一般不会这么用）
"""

import asyncio


async def func(num):
    print(num, 1)
    await asyncio.sleep(1)
    print(num, 2)
    return 3

# 如果是在async def外部调用的话，需要交给asyncio.run()执行，让它去自行创建task，而不是由我们显性的创建
task_list = [
    func(1),
    func(2)
]

done, pending = asyncio.run(asyncio.wait(task_list, timeout=None))
for task in done:
    # 根据不同任务做不同处理
    print(task.result())
